<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box{
            width: 100px;
            height: 150px;
            border:1px solid #000000;
            padding: 10px;
        }
        .all{
            margin-bottom: 20px;
            border-bottom: 1px solid #000000;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="all">
            全选：<input type="checkbox" name="" id="1" >
        </div>
       
        <div class="single">
            选项一：<input type="checkbox" name="" id=""><br>
            选项二：<input type="checkbox" name="" id=""><br>
            选项三：<input type="checkbox" name="" id="">
        </div>
    </div>
    <script>
        var allBtn=document.querySelector('.all>input')
        var singleBtns=document.querySelectorAll('.single>input')//有一个forEach方法，但不是数组方法
        //点击全选
        allBtn.onclick=()=>{
            // console.log(1);
            var type=allBtn.checked
            console.log(type);
            singleBtns.forEach((item,index)=>{
                // console.log(item);
                // item.setAttribute('checked',true)                                                                                                                                                                                                                                                                                                                                                             
               item.checked=type

            })
        }
        //点击单选
       
        for(var i=0;i<singleBtns.length;i++){
            singleBtns[i].onclick=()=>{
                // console.log(1);
                var flag=true
                for(var i=0;i<singleBtns.length;i++){
                    if(!singleBtns[i].checked){
                        flag=false
                    }
                }
                allBtn.checked=flag
            }
        }
      
    </script>
</body>
</html>